package io.ede.common.utils;

import java.io.*;
import java.net.URL;
import java.net.URLConnection;

public class FileUtils {

    public static void writeFile(String file,String content){
        try {
            //写入相应的文件
            PrintWriter out = new PrintWriter(new FileWriter(file));
            //写入相关文件
            out.println(content);
            //清楚缓存
            out.flush();
            //关闭流
            out.close();
        }catch (Exception e){
            e.printStackTrace();
        }
    }

    /**
     * 从网络上下载文件
     * @param netUrl
     * @param local
     */
    public static void downLoadNetFile(String netUrl,String local){
        try {
            //根据String形式创建一个URL对象，
            URL url = new URL(netUrl);
            //实列一个URLconnection对象，用来读取和写入此 URL 引用的资源
            URLConnection con = url.openConnection();
            //获取一个输入流
            InputStream is = con.getInputStream();
            //实列一个输出对象
            FileOutputStream fos = new FileOutputStream(local);
            //一个byte[]数组，一次读取多个字节
            byte[] bt = new byte[200];
            //用来接收每次读取的字节个数
            int b = 0;

            //循环判断，如果读取的个数b为空了，则is.read()方法返回-1，具体请参考InputStream的read();
            while ((b = is.read(bt)) != -1) {
                //将对象写入到对应的文件中
                fos.write(bt, 0, b);
            }
            //刷新流
            fos.flush();
            //关闭流
            fos.close();
            is.close();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

}
